#ifndef __JOSPFILTER_H_
#define __JOSPFILTER_H_
#include "j_includes.h"
#include "ModuleManagerDef.h"

class CJospFilter : public J_RequestFilter
    , public J_VodCommandFilter
{
public:
    CJospFilter();
    ~CJospFilter();

    static int Maker(J_Obj *&pObj)
    {
        pObj = new CJospFilter();
        return J_OK;
    }

public:
    ///J_ProtocolFilter
    virtual int Parser(const char *request);
    virtual int Convert(const char *pInputData, J_StreamHeader &streamHeader, char *pOutputData, int &nOutLen);
    virtual int SetContext(const J_MediaContext *cxt)
    {
        return 0;
    }
    virtual int GetRetrunVal(char *pRetVal, int &nRetLen);
    virtual int GetStatus() const
    {
        return (J_ProParamOk | J_ProConnOk);
    }

private:
    J_MuxFilter *m_muxFilter;
};

FILTER_BEGIN_MAKER(josp)
FILTER_ENTER_MAKER("JOSP", CJospFilter::Maker)
FILTER_END_MAKER()

#endif //~__JOSPFILTER_H_
